package com.uchengwang.ui.cm_ui.umsg.adapter;

import android.app.Activity;
import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

import com.uchengwang.R;
import com.uchengwang.functions.image.ImageManager;
import com.uchengwang.ui.cm_ui.cycle.adapter.BaseCycleAdapter;
import com.uchengwang.ui.cm_ui.cycle.bean.RyGroupBean;
import com.uchengwang.ui.cm_ui.cycle.viewHolder.BaseViewHolder;
import com.uchengwang.ui.utils.UCommonUtil;
import com.uchengwang.ui.utils.WidgetUtil;

import io.rong.imlib.model.Conversation;

/**
 * Created by U城网 on 2017/7/4.
 * 我的群组
 */

public class GroupAdapter extends BaseCycleAdapter<RyGroupBean, RecyclerView.ViewHolder>{
    private Context context;

    public GroupAdapter(Context context){
        this.context = context;
    }

    @Override
    public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(context).inflate(R.layout.item_layout_view, parent, false);
        return new BaseViewHolder(view, 0);
    }

    @Override
    public void onBindViewHolder(RecyclerView.ViewHolder h, int position) {
        BaseViewHolder holder = (BaseViewHolder) h;

        final RyGroupBean bean = list.get(position);
        final int applyStatus = bean.getApplyStatus();//-1 说明未发过申请 0=未读 1=已读 2=接受 3=不接受

        String logo = bean.getGroupLogo();
        if (TextUtils.isEmpty(logo)){
            ImageManager.getInstance().loadImage(context, holder.head, R.drawable.no_head, ImageManager.ImageType.CIRCLE);
        }else {
            ImageManager.getInstance().loadImage(context, holder.head, logo, ImageManager.ImageType.CIRCLE);
        }

        holder.name.setText(bean.getGroupName());
        String desc = bean.getGroupDesc();
        if(!TextUtils.isEmpty(desc)){
            holder.des.setText(desc);
        }else {
            holder.des.setText("暂无群描述信息");
        }

        final boolean isJoin = (bean.isMember() || bean.getAdminUid() == UCommonUtil.getUtil().getId());//是否已,是成员
        WidgetUtil.getUtil().setChatWidget(holder.bt);
//        if (isJoin){
//            //已加群
//            WidgetUtil.getUtil().setChatWidget(holder.bt);
//        }else {
//            if (applyStatus >=0){
//                //说明之前有过申请加群的操作
//                holder.bt.setText("验证中");
//                holder.bt.setBackgroundResource(R.drawable.selector_no_atten);
//                holder.bt.setTextColor(context.getResources().getColor(R.color.delete_selector));
//            }else {
//                holder.bt.setText("加群");
//                holder.bt.setBackgroundResource(R.drawable.selector_friends);
//                holder.bt.setTextColor(context.getResources().getColor(R.color.register_user_selector));
//            }
//
//        }

        holder.bt.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if (UCommonUtil.getUtil().isNeedLogin((Activity) context, false)){
                    return;
                }
                UCommonUtil.getUtil().toChatActiviy(context, bean.getId(), Conversation.ConversationType.GROUP, bean.getGroupName());

//                if (isJoin){
//                    //跳转聊天界面
//                    UCommonUtil.getUtil().toChatActiviy(context, bean.getId(), Conversation.ConversationType.GROUP, bean.getGroupName());
//                }else {
//                    //做加群操作
//                    if (applyStatus >=0){
//                        UCommonUtil.getUtil().showToast(context, "请等待群主处理");
//                    }else {
//                        DialogUtils.getUtils().inviteGroup(context, bean, false, new OnResultListener() {
//                            @Override
//                            public void onResult(int stutas, String msg, int total, String data) {
//                                if (stutas ==0){
//                                    if (bean.isNeedApply()){
//                                        //需要验证
//                                        bean.setApplyStatus(0);
//                                    }else {
//                                        //不需要验证 加群成功
//                                        bean.setMember(true);
//                                    }
//                                    notifyDataSetChanged();
//                                }
//                            }
//                        });
//                    }
//                }
            }
        });

        holder.view.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                UCommonUtil.getUtil().toChatActiviy(context, bean.getId(), Conversation.ConversationType.GROUP, bean.getGroupName());
//                if (isJoin){
//                    //跳转聊天界面
//                    UCommonUtil.getUtil().toChatActiviy(context, bean.getId(), Conversation.ConversationType.GROUP, bean.getGroupName());
//                }else {
//                    DialogUtils.getUtils().inviteGroup(context, bean, true, null);
//                }
            }
        });
    }

    @Override
    public int getItemCount() {
        return list.size();
    }

    /**
     * 查看自己是否加入该群
     * */
//    private boolean isMemeber (long groupId){
//        if (groups != null && groups.size() >0){
//            for (RyGroupBean group : groups){
//                if (groupId == group.getId()){
//                    return true;
//                }
//            }
//            return false;
//        }
//        return false;
//    }
}
